package com.jy.modules.cims.data.common.dao;

import java.util.List;
import java.util.Map;

import com.jy.modules.cims.data.common.dto.TCMmLoanDetailDTO;
import com.jy.platform.core.mybatis.MyBatisRepository;
/**
 * @classname: TCMmLoanDetailDao
 * @description: 定义  贷款明细 持久层 接口
 * 通过@MapperScannerConfigurer扫描目录中的所有接口, 动态在Spring Context中生成实现.
 * 方法名称必须与Mapper.xml中保持一致.
 * @author:  zhiqiang
 */
@MyBatisRepository
public interface TCMmLoanDetailDao {

    /**
     * @author zhoupeng
     * @description: 查询贷款明细 导出
     * @date 2015-10-31 20:32:17
     * @param searchParams
     * @return
     */
    public List<TCMmLoanDetailDTO> searchTCMmLoanDetailExport(Map<String,Object> searchParams);
    /**
     * @author zhiqiang
     * @description: 分页查询贷款明细
     * @date 2015-01-12 20:32:17
     * @param searchParams
     * @return
     */
    public List<TCMmLoanDetailDTO> searchTCMmLoanDetailByPaging(Map<String, Object> searchParams) ;
    
    /**
     * @author zhiqiang
     * @description:查询对象贷款明细
     * @date 2015-01-12 20:32:17
     * @param searchParams
     * @return
     */
    public List<TCMmLoanDetailDTO> searchTCMmLoanDetail(Map<String,Object> searchParams);

    
    /**
     * @author zhiqiang
     * @description:查询对象贷款明细
     * @date 2015-01-12 20:32:17
     * @param id
     * @return
     */
    public TCMmLoanDetailDTO findTCMmLoanDetailByPrimaryKey(String id);
    
    /**
     * @description:通过合同号查询对象贷款明细
     * @param contractNo
     * @return
     */
    public TCMmLoanDetailDTO findTCMmLoanDetailByPrimaryContractNo(String contractNo);
    
    /**
     * @author zhiqiang
     * @description: 新增对象贷款明细
     * @date 2015-01-12 20:32:17
     * @param paramMap
     * @return
     */
    public int insertTCMmLoanDetail(Map<String, Object> paramMap);
    
    /**
     * @author zhiqiang
     * @description: 更新对象贷款明细
     * @date 2015-01-12 20:32:17
     * @param paramMap
     */
    public void updateTCMmLoanDetail(Map<String, Object> paramMap);
    
    /**
     * 更新贷款明细通过条件
     * @param paramMap
     */
    public void updateTCMmLoanDetailByCondition(Map<String, Object> paramMap);
     
    /**
     * @author zhiqiang
     * @description: 按主键删除贷款明细
     * @date 2015-01-12 20:32:17
     * @param ids
     * @return
     */ 
    public void deleteTCMmLoanDetailByPrimaryKey(Map<String, Object> paramMap);
    /**
     * 
     * @Title updateDealCostValues
     * @Description TODO
     * @param dealCode 
     * void 
     * @author lizhiqiang
     * @date 2016-8-23-下午5:07:44
     * @update 
     * @throws
     */
    public void updateDealCostValues(String dealCode);
}
